package Classic150;

import Tree.TreeNode;

public class 求根节点到叶节点数字之和 {

    /*
        注意递归过程（回溯过程）
     */
    public int sumNumbers(TreeNode root) {
        return sumOfPath(root, 0);
    }

    public int sumOfPath(TreeNode root, int sum) {
        if (root == null) return 0;
        int temp = sum * 10 + root.val;
        if (root.left == null && root.right == null) return temp;
        return sumOfPath(root.left, temp) + sumOfPath(root.right, temp);
    }
}
